package com.mashuai.utils.toolkit.inter;

import com.mashuai.utils.toolkit.achieve.MsExegesis;

import java.util.List;

/**
 * 调用MsDb保存方法之前的拦截器
 */
@MsExegesis("调用MsDb保存方法之前的拦截器。注意：该接口在项目中只可以被实现一次。")
public interface IMsDbSaveBeforeIntercept {
    @MsExegesis("保存前的对数据的预处理，比如回填一些默认字段值等等操作。统一处理，如果有特殊的需要在handleCondition方法定义是否处理条件即可。")
    <T> void beforeSave(List<T> list,Class<T> clz);

    @MsExegesis("返回本次要操作数据库实体类的class对象，如果返回false，则本次不进行beforeSave方法里面的处理操作。")
    <T> boolean handleCondition(Class<T> clz);
}
